﻿
using System.Collections.Generic;
using ZSoft.PushServices.Net.DTO;
using ZSoft.PushServices.Net.Transport;

namespace ZSoft.PushServices.Net.Services
{
    public interface INotificationService
    {
        NotificationResult NotifyDevice(string deviceId, NotificationDTO notif);
        NotificationResult Notify(string deviceId, NotificationDTO notif, DeviceStatus deviceStatus);
        List<KeyValuePair<string, NotificationResult>> NotifyDevices(string appId, NotificationDTO notif);

        event NoitificationSendHandler NotificationSent;
        event NoitificationSendFailureHandler NotificationFailed;
        event NotificationQueuedHandler NotificationQueued;
    }
}
